package com.cap.bts.crmdp.dealer.masterinfo.service;

import java.util.List;
import java.util.Map;

import com.cap.bts.crmdp.dealer.masterinfo.domain.MasterFileModel;
import com.cap.bts.crmdp.dealer.masterinfo.domain.OtherProductModel;
import com.cap.bts.crmdp.dealer.masterinfo.domain.ServiceInfoDefModel;
import com.cap.bts.crmdp.dealer.masterinfo.domain.TyreProductModel;
import com.cap.bts.crmdp.dealer.masterinfo.dto.MaeterInfoDto;
import com.cap.bts.crmdp.dealer.masterinfo.dto.MasterFileDto;
import com.cap.bts.framework.common.exception.AppException;
import com.cap.bts.framework.common.service.IBaseService;

/**
 * 同步数据接口
 * <p>Title: ITyreProductService.java</p>
 * @author lizhiyong
 * @date 2015-10-14 下午1:55:06 
 * @version v 0.1
 */
public interface IMasterInfoService extends IBaseService {

//    public void checkSaveInfo(Map<String, Object> dataMap, MaeterInfoDto dto) throws AppException;

    /**
     * 轮胎数据新增
     * @param tyreProductModel
     * @return
     * @throws AppException
     */
//    public TyreProductModel insertTyreProductInfo(TyreProductModel tyreProductModel)
//                                                                                    throws AppException;

//    public void removeAllTyreProductInfo() throws AppException;

    /**
     * 删除轮胎数据
     * @throws AppException
     */
//    public void removeTyreProduct() throws AppException;

    /**
     * 查询所有的轮胎数据
     * @return
     * @throws AppException
     */
    public List<TyreProductModel> getAllTyreProduct() throws AppException;

    /**
     * 非轮胎数据新增
     * @param otherProductModel
     * @return
     * @throws AppException
     */
//    public OtherProductModel insertOtherProductInfo(OtherProductModel otherProductModel)
//                                                                                        throws AppException;

    /**
     * 删除非轮胎数据
     * @throws AppException
     */
//    public void removeOtherProduct() throws AppException;

    /**
     * 查询所有的非轮胎数据
     * @return
     * @throws AppException
     */
    public List<OtherProductModel> getAllTOtherProduct() throws AppException;

    /**
     * 服务数据新增
     * @param otherProductModel
     * @return
     * @throws AppException
     */
//    public ServiceInfoDefModel insertServiceInfo(ServiceInfoDefModel serviceInfoDefModel)
//                                                                                         throws AppException;

    /**
     * 删除服务数据
     * @throws AppException
     */
//    public void removeServiceInfoDef() throws AppException;

    /**
     * 查询所有的服务数据
     * @return
     * @throws AppException
     */
    public List<ServiceInfoDefModel> getAllServiceInfoDef() throws AppException;

    /**
     * 根据文件名称查询已经同步过的master文件
     * @param masterFileDto
     * @return
     * @throws AppException
     */
//    public MasterFileModel getMasterFileInfoByFileName(MasterFileDto masterFileDto)
//                                                                                   throws AppException;

    /**
     * 保存同步的文件属性信息
     * @param masterFileDto
     * @return
     * @throws AppException
     */
//    public MasterFileModel insertMasterFileInfo(MasterFileDto masterFileDto) throws AppException;
    
//    public void deleteTyreProductInfo(TyreProductModel model) throws AppException;
    
//    public List<TyreProductModel> getTyreProductInfoByMfgrCode(String mfgrCode) throws AppException;
    
//    public void getOpenHttpConnect(MaeterInfoDto dto) throws AppException;
    
//    public Map<String, Object> getFileInfo(String result, String fileType,String synchronizationMethod) throws AppException;
    
//    public void processSynchronizationDataFromWecare() throws AppException;
}
